<!DOCTYPE html>
<html lang="zh-cn">
  <head>
    <meta charset="UTF-8">
    <title>Sucha's Blog - Archive for July, 2012</title>
    <meta name="generator" content="MarkdownProjectCompositor.lua">
    <meta name="author" content="Sucha">
    <meta name="keywords" content="suchang, programming, Linux, Lua">
    <meta name="description" content="Sucha's blog">
    <link rel="shortcut icon" href="../images/ico.png">
    <link rel="stylesheet" type="text/css" href="../styles/blog.css">
    <link rel="stylesheet" type="text/css" href="../styles/prism.min.css">
    <style id="site_theme"></style>
  </head>
  <body>
    <div id="body">
      <div id="text">
	   <!-- Page published by cmark-gfm begins here --><h1>Sucha's Blog ~ Archive for July, 2012</h1>
<p><a id="p2"></a></p>
<div class="date">12年7月25日 周三 22:57</div>
<h2>三体</h2>
<p>其实一直很少看科幻类的书，高中时候倒是还翻过卫斯里的，觉得是半天可以看完
一本的快餐类，所以到现在连内容都忘了。</p>
<p>三体早已盛名在外，名声是直指国内顶尖，要不我也不会随便上科幻的船了。</p>
<p>三体共分三部，故事的时空跨度很长。第一部还包含了一部分文革的内容，貌似也
因为这个造成出版上的困难，实际上涉及到的内容不多，而且又都是科幻故事类的，
一眼就看出来不是真的了。</p>
<p>感觉第三部最为震撼，让人入迷，我也好久没试过为此熬夜看书了。本书里面的文
笔细节、人物刻画相比大文豪差远了，但是故事编排方面，结合宏大的宇宙背景，
紧紧拉住了我对未知宇宙的想象、期待，我真想一口气读完，而其情节的发展、生
长确实有非常独到的地方。</p>
<p>我总觉得，是不是刘慈欣前两部只是练笔，到第三部终于手法纯熟。也可能所谓的
峰回路转，是前两部有意的低调、收敛造成的。</p>
<p>看网上评价三体，是说其数据以及推理的真实成分，体现了作者的科学素养，而对
于我这种记忆力和数学都很差，不懂所谓的天体物理，且早就把经典物理忘得差不
多的人来说，仅仅是围观其想象力而已。</p>
<p>不过这次围观，让我震撼，期待三体能拍成电影，还是有续集的那种，当然最期待
的是还第三部。</p>
<div class="category"><a href="CategoryReading.html">CategoryReading</a> / <a href="2012-07.html#p2">Permalink</a> / <a href="https://github.com/lalawue/homepage/discussions/categories/blog" target="_blank">Discussion</a></div>
<!-- date: 2012-07-25T22:57:57+0800 -->
<p><a id="p1"></a></p>
<div class="date">12年7月12日 周四 15:53</div>
<h2>有关 coLinux</h2>
<p>主页重新开通后，又可以用以前自动上传的脚本了，可是脚本依赖 bash 及
ncftpput 上传，在远离主页的日子里，Cygwin 已被我删掉。再说 Cygwin 是相当
地慢，一个 ls 从 enter 之后到结果出来，可以让你发一下呆。</p>
<p>VMware 启动慢，跟 windows 的目录映射复杂，比如，我就不能将 c:\USER_HOME
这个目录当成类似 Cygwin 下的 $HOME 目录，samba、cifs、hgfs（目录共享） 之
类的方式忒复杂了。</p>
<p>而且我不关心硬件虚拟，我只要一个 bash 跟 ncftput 就行了。</p>
<p>针对以上，coLinux 方便了许多，它是类似 Xen 这样的虚拟机，kernel 被修改过
以运行 windows 的特权指令，所以即便可以支持很多的发行版，实际上 kernel 镜
像必须使用修改过的。</p>
<p>由于这一虚拟层很薄，所以它的性能也是最有保证的，在我五年前的 Intel Duo
Core 上，启动到 login 的 prompt 只要 8 秒钟。</p>
<p>觉得 coLinux 最方便的地方，在于映射 win 下的目录只要在配置文件里面指定就
可以了，在 guest 这边被当成了磁盘，随意 mount 到哪个目录都可以，填到
/etc/fstab 里面就自动化了。</p>
<p>rootfs 挑的是 ArchLinux 发行版的，下载的压缩包 20M，解压后 260M。文档有点
不足，比如配置文件里面默认将 rootfs 指定到 cobd[x] 设备，挂载上来的磁盘永
远都是只读的，我是将其指定到 hda[x] 设备，才可以读写。</p>
<p>这样以前 Cygwin 下的 $HOME 目录，重新被挂载到了 /root 下。</p>
<p>然后又遇到了问题，这个 ArchLinux 的 rootfs 镜像，居然没有 tar，如今随便
一个嵌入式小系统的 busybox，都有 tar 了，这个镜像太坑爹了。</p>
<p>于是到 gnu 的网站下 tar，新的版本还依赖 pthread 库，为避免依赖问题，下了
一个很早之前的版本，tar-1.12，放到 VMware 这边编译了一下，还好可以用，真
是足够老的软件了。</p>
<p>之后是 ncftpput 的问题，这回是运行时出错，依赖 GLIBC_2.11，而 ArchLinux
镜像这边只有 GLIBC_2.7。nm 看了一下符号，其实只有一个函数是 GLIBC_2.11 下
的，叫什么 __longjmp_chk，一个出错处理函数。</p>
<p>VMware 这边 /usr/include 找了一遍，找到接口定义在
/usr/include/bits/setjmp2.h里，是从 /usr/include/setjmp.h 这个文件
include 过来的，里面的 ifdef 看不懂啥含义，干脆 su 成 root 注释掉重新编译
再说。依赖没有后，正常跑起来可以上传了。</p>
<p>coLinux 真不错，就是有些 rootfs 太坑爹了，其实 260M 的体积也不小了。</p>
<div class="category"><a href="CategoryLinux.html">CategoryLinux</a> / <a href="2012-07.html#p1">Permalink</a> / <a href="https://github.com/lalawue/homepage/discussions/categories/blog" target="_blank">Discussion</a></div>
<!-- date: 2012-07-12T15:53:58+0800 -->
<p><a id="p0"></a></p>
<div class="date">12年7月11日 周三 16:47</div>
<h2>主页重新开通</h2>
<p>寄宿网易轻博客的日子终于过去，今儿终于找到了一款比较便宜的海外虚拟主机，
对于我等静态 HTML 完全够用，就等 A 记录生效了。</p>
<p>希望这款便宜的海外虚拟主机能够持续久一点，不用让我再反反复复折腾来折腾去
了。</p>
<p>古老的个人网站，继续走下去吧。</p>
<div class="category"><a href="CategoryThisSite.html">CategoryThisSite</a> / <a href="2012-07.html#p0">Permalink</a> / <a href="https://github.com/lalawue/homepage/discussions/categories/blog" target="_blank">Discussion</a></div>
<!-- date: 2012-07-11T16:47:29+0800 -->
<!-- Page published by cmark-gfm ends here -->
  <div id="foot">2004-<script>var d = new
	Date();document.write(d.getFullYear())</script> &copy;
	Sucha. Powered by MarkdownProjectCompositor.
  </div>
  </div><!-- text -->
  <div id="sidebar">
  </div><!-- sidebar -->
  <script src="../js/prism.min.js" async="async"></script>
  <script src="../js/blog_sidebar.js"></script>
  </div> <!-- body -->
</body>
</html>